<
programming, operating system> A
variable that is bound in
the current environment. When evaluating an expression in
some environment, the evaluation of a
variable consists of
looking up its name in the environment and substituting its
value.
Most programming languages have some concept of an environment
but in
Unix shell scripts it has a specific meaning
slightly different from other contexts. In shell scripts,
environment variables are one kind of
shell variable. They
differ from
local variables and
command line arguments in
that they are inheritted by a
child process. Examples are
the PATH
variable that tells the shell the
file system
paths to search to find command
executables and the TZ
variable which contains the local time zone. The
variable
called "SHELL" specifies the type of shell being used.
These variables are used by commands or
shell scripts to
discover things about the environment they are operating in.
Environment variables can be changed or created by the
user
or a program.
To see a list of environment variables type "setenv" at the
csh or
tcsh prompt or "set" at the
sh,
bash,
jsh
or
ksh prompt.
In other programming languages, e.g.
functional programming
languages, the environment is extended with new bindings when
a
function's
parameters are bound to its {actual
arguments} or when new variables are declared. In a
block-structured procedural language, the environment
usually consists of a
linked list of
activation records.
(1999-01-26)